package com.woody.aggregate.shop.api;

import com.woody.aggregate.shop.req.es.EsShopListRequest;
import com.woody.aggregate.shop.req.es.EsVipShopListRequest;
import com.woody.aggregate.shop.req.es.QueryEsShopByIdsRequest;
import com.woody.aggregate.shop.vo.ESPageInfo;
import com.woody.aggregate.shop.vo.EsShopInfoVo;
import com.woody.base.model.Response;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import javax.validation.Valid;
import java.util.List;

/**
 * &copy; All rights Reserved
 *
 * @author wénkǎi.zhāng 2025-04-10
 */
public interface EsShopQueryApi {
    @PostMapping("queryByIds")
    @ApiOperation(value = "根据门店id批量查询门店信息", notes = "根据门店id批量查询门店信息")
    Response<List<EsShopInfoVo>> queryByIds(@Valid @RequestBody QueryEsShopByIdsRequest request);

    @PostMapping("list/vip")
    @ApiOperation(value = "精选门店列表", notes = "精选门店列表")
    Response<ESPageInfo<EsShopInfoVo>> vipShopList(@RequestBody @Valid EsVipShopListRequest request);

    @PostMapping("list/all")
    @ApiOperation(value = "全部门店列表", notes = "全部门店列表")
    Response<ESPageInfo<EsShopInfoVo>> allShopList(@RequestBody @Valid EsShopListRequest request);
}
